package com.powerdata.system.paimon;

import com.powerdata.system.domain.PaimonCatalog;
import com.powerdata.system.domain.param.PaimonCatalogParam;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * @author deeprado
 * @version 1.0
 * @description
 * @date 2023/6/12 11:10
 */
public interface ICatalogService {
    Map<String, Object> catalogList(PaimonCatalogParam paimonCatalogParam) throws Exception;

    void addCatalog(PaimonCatalog paimonCatalog) throws Exception;

    void modifyCatalog(PaimonCatalog paimonCatalog) throws Exception;

    void deleteCatalog(PaimonCatalog paimonCatalog) throws Exception;

    List<String> upLoadHiveCatalogFile(MultipartFile file, String catalogId) throws Exception;

    List<String> getHiveCatalogFiles(String catalogId) throws Exception;

    List<String> deleteHiveCatalogFiles(String catalogId, String types) throws Exception;

    void downloadHiveCatalogFile(HttpServletRequest request, HttpServletResponse response,
                                 String catalogId, String types) throws Exception;

    void initCatalogUtils();
}
